package thread;

/**
 * 获取一个线程相关信息的方法
 */
public class ThreadInfoDemo {
    public static void main(String[] args) {
        Thread t = new Thread() {
            public void run() {
                /*
                    String getName()
                    获取线程的名字
                    我们定义的线程若没有显示指定名字时，系统会分配一个名字，格式:Thread-X
                    X是一个数字
                 */
                String name = this.getName();
                System.out.println(name);
                /*
                    可以作为ID使用的值必须同时具备两个要求:
                    1.非空
                    2.唯一
                    通常id都是系统分配，而不是认为干预。
                 */
                long id=this.getId();//id:唯一标识
                System.out.println(id);
                /*
                    int getPriority()
                    获取线程优先级
                 */
                int priority=this.getPriority();
                System.out.println(priority);
                //线程是否被中断
                boolean isInterrupted=this.isInterrupted();
                //线程是否为守护线程
                boolean isDaemon=this.isDaemon();
                //线程是否还活着
                boolean isAlive=this.isAlive();
                System.out.println("是否被中断:"+isInterrupted);
                System.out.println("是否是守护线程:"+isDaemon);
                System.out.println("是否还活着:"+isAlive);
            }
        };
        t.start();
    }
}
